1. Field of the Invention
The invention relates to a position sensing and/or displacement sensing system such as scale-based encoders, having a signal processor that corrects for scale inaccuracy. More particularly, the correction is based on a limited set of correction coefficients.
2. Related Art
Generally, this invention applies to the field of position sensing and/or displacement sensing systems, specifically scale based encoders or sensors. Scale based sensors are typically optical or magnetic and are characterized by having a scale (a component with xe2x80x9cmarkingsxe2x80x9d of some sort), and a sensing head to read the markings on the scale. Other types of sensors, such as capacitive probes, measure displacement by the change in strength of some physical parameter, whereas scale based sensors measure displacement by observing the movement of the scale.
In a conventional system, the marks on the scale are periodic, thereby creating a periodic pattern that is observable by the sensor. The measured displacement of the periodic scale is proportional to the number of cycles of the observable pattern that the sensor observes during the displacement.
The accuracy of any particular individual scale-based sensor is affected by the specific scale. The accuracy over ranges which are medium to long relative to the period of the markings is closely related to the accuracy with which the markings are placed on the scale and the flatness of the scale. While the average accuracy of any scale is usually quite good, that is, the total number of marks over the length of the scale is well known, the accumulated error about the average is difficult to maintain at an acceptably low level.
Conventionally, long sensor scales have been calibrated with great care and the calibration data for a particular scale delivered to customers either as certification that the scale meets certain performance levels or as a means for the customer to back out the calibrated errors.
A simplified schematic diagram of an optical sensor 10 is shown in FIG. 1 for reference. The sensor includes a glass scale 100 on which there is a periodic array 110 of transmissive and opaque regions, a source of illumination 210 that illuminates the scale 100, an optical detector 250 with detecting elements 220 to sense the position of a fringe pattern 150 created by light passing through the periodic array 110, and a processor 300 that operates on the signals generated by the detecting elements 220. When the scale 100 moves relative to the light source/optical detector combination, the fringe pattern 150 moves proportionately. It is therefore motion of the fringe pattern that the sensor 10 uses to estimate displacement.
In addition to the periodic array 110, the scale 100 may include an indexing or reference mark 125. This mark identifies a specific known, fixed location along the scale 100 and allows the sensor to uniquely identify one cycle of the periodic array 110. The presence or passing of this mark is detected, typically by one or more detecting elements which form the index mark sensor 225, in the detector 250.
The processor 300 converts the detected signals from the detector 250 into estimates of scale displacement. Various processing algorithms can be used, depending on the specific form of the signals.
According to one method shown in the block diagram in FIG. 3, referring to systems such as shown in FIG. 1, the processor inputs the fringe data 305. At block 310, the algorithm first estimates the location of the scale modulo one period of the periodic array 110, known as the fractional cycle. At block 320, it determines if the scale has moved from one period of the array to an adjacent period. At block 330, it increments or decrements, as appropriate, an accumulator holding the number of periods of the periodic array that have passed since initialization. At block 340, the processor then adds the fraction cycle calculated in block 310 to the number of full cycles in the accumulator from block 330. The resulting scale displacement 355 is output.
Preferably, the processor 300 also accepts index mark sensor data signals 325 from the index mark sensor 325, and at block 315, it determines whether the index mark is present. Then, at block 350 it uses those signals to generate an initialization pulse to reset the accumulator.
For sensors in which the scale does not have an indexing mark, the accumulator is typically initialized by an external command 315a, generally when the scale is positioned at one end 101 of its range of travel, perhaps against a hard stop.
Although a linear displacement sensor is depicted in FIG. 1, it will be apparent to one skilled in the art that the same sensing and processing approach and principles are known in connection with rotary motion detection systems, as has been described in the literature.
The present invention provides a measurement system in which the calibration data is easily incorporated into or obtained by the position sensing and/or displacement sensing system""s processing unit, so that the system provides the customer with highly accurate measurements without that customer""s active intervention, even where the scale has known inaccuracy. The invention provides not only field replacement of a scale, but also sales of scales independently of sensors, with easy incorporation of the scale""s calibration data into the processor.
The invention is a scale-based encoder with a signal processor or other processer that corrects or adjusts for scale inaccuracy based on a limited set of correction coefficients or other adjustment data. The correction coefficients are initially calculated, for example at the factory, but can be loaded subsequently into the encoder, such as when it is in the field. The correction coefficients are the slopes and offsets that provide a piecewise linear correction curve. Other data characteristic of adjustment data may alternatively be used. Several ways for communicating the coefficients to the processor are envisioned. Correction is applicable to linear or rotary encoders. The invention is applicable to alternative position sensors such as capactive encoders, magnetic encoders, inductive encoders, image processing encoders, etc.
In accordance with the invention, there is provided a method and system for detecting relative movement and correcting for scale inaccuracy. A scale is relatively movable with respect to a source with at least one detectable property. A periodic detector includes a sensing region positioned thereon, positioned relative to the scale to detect the detectable property, wherein the periodic detector detects and transmits a measure of displacement of the scale in response to a movement of the scale. A processor is operatively connected to the periodic detector, receiving the measure of displacement from the periodic detector, receiving calibration data corresponding to the scale indicative of an approximation correlating to the scale, the approximation including a plurality of segments, each of the segments corresponding to a portion of the scale, and converting the measure of displacement into a calibrated displacement using the correlation data.
In at least one embodiment, the approximation is linear and piecewise. The approximation may be a higher order approximation.
In at least one embodiment, the detectable property may include a periodic array of alternating regions, and the periodic array is linear.
In at least one embodiment, the detectable property may include a periodic array of alternating regions, and the periodic array is radial.
In at least one embodiment, a center of the radial array and a center of rotation are not coincident.
In at least one embodiment, the periodic detector transmits an analog signal representative of the measure of displacement, and the processor receives the analog signal as the measure of displacement.
In at least one embodiment, the processor further transmits an output representative of the calibrated displacement.
In at least one embodiment, the output representative of the calibrated displacement is a digital word of at least two bits representing a magnitude that is proportional to the relative displacement.
In at least one embodiment, the output representative of the calibrated displacement is at least one pulse train wherein an accumulated number of pulses is proportional to the relative displacement.
In at least one embodiment, the approximation includes information defining a plurality of locations on the scale at which the segments meet, information defining the slope of each segment, and information defining the offset of each segment. The approximation may include information defining a plurality of locations on the scale at which the segments meet, information defining a change in the slope of each segment, and information defining an offset between adjacent segments.
In at least one embodiment, there is included a microprocessor interface connection to the processor, wherein the processor receives the calibration data from the microprocessor interface.
In at least one embodiment, the processor has a means of being reset when the scale is in a pre-determined location so as to match the calibration data regarding the scale errors to the location on the scale.
In at least one embodiment, the processor selects, the calibration data corresponding to a particular position along the scale to remove the majority of the error in the output signal.
In at least one embodiment, the processor converts the measure of displacement to obtain the calibrated displacement using the piecewise approximation comprising a linear correction of the form: xc=ai*xr+bi, where xc is a corrected scale position, xr is a raw calculation of the scale position, and ai and bi are calibration coefficients included in the calibration data. The coefficients ai and bi may be i-th coefficients, selected from the calibration data when x(ixe2x88x921) less than xr less than xi. The coefficients ai and bi may be calculated in the processor from a look-up table of differential coefficients using the formula: ai=a(ixe2x88x921)+Di, bi=b(ixe2x88x921)+Di, where Di is the i-th differential coefficient.
In at least one embodiment, the processor converts the measure of displacement to obtain the calibrated displacement using the piecewise approximation comprising a linear correction of the form: xc=xr+(ai*xr)+bi
where
xc is the corrected scale position,
xr is the raw calculation of the scale position,
ai and bi are calibration coefficients included in the calibration data. The coefficients ai and bi may be i-th coefficients, selected from the calibration data when x(ixe2x88x921) less than xr less than xi. The coefficients ai and bi may be calculated in the processor from a look-up table of differential coefficients using the formula: ai=a(ixe2x88x921)+Di, bi=b(Ixe2x88x921)+Di, where Di is the i-th differential coefficient.
According to at least one embodiment, the invention includes an index location indicator on the scale, and a second sensing region on the periodic detector positioned relative to the index location indicator, the second sensing region being capable of detecting the index location indicator on the scale.
In at least one embodiment, the processor resets the measure of displacement based on the index location indicator.
In at least one embodiment, there is provided a machine-readable storage, and the calibration data are stored in the machine-readable storage.
In at least one embodiment, the machine-readable storage is positioned on the scale, and there is provided a means for reading the calibration data in the machine-readable storage.
In at least one embodiment, the second sensing region transmits the detected index location, and the processor, responsive to receipt of the transmitted detected index location, resets the measure of displacement.
These and other objects, features and advantages of the present invention are readily apparent from the following drawings and detailed description of the preferred embodiments.